Projet Zuul de conception orientée objet en Java d'un jeu d'aventure
Forum des exercices du projet Zuul
Exercice 7.42
Add some form of time limit to your game.
If a certain task is not compleled in a specified time, the player loses.
A time limit can easily be implemented by
counting the number of moves or the number of entered commands.
You do not need to use real time.
(mais si vous y tenez, regardez l'exercice optionnel 7.42.1)
Ne pas oublier de lire les échanges ci-dessous pour mieux comprendre la bonne manière de réaliser cet exercice.
Bonsoir, je vois pas trop par où commencer pour cet exercice.
J'imagine qu'il faut gérer l'instant où on fait une action spécifique, comme ramasser un objet puis compter le nombre de déplacements réalisés et si ils dépassent un certain nombre, afficher un message à l'écran du genre "vous avez perdu" et bloquer le gui à la manière de quit.
Mais il faut également gérer l'arrêt de la time limit.
Ou alors est-il possible de faire une sorte de mini-jeu qui se lance avec une commande particulière dans une room particulière suivant le scénario ?
Ma question serait de savoir si il vaut mieux modifier les méthodes existantes comme changeRoom (la méthode qui change la currentRoom dans player) directement ou de créer une nouvelle classe pour gérer la timeLimit ?
Cordialement, Jean Coulom.
L'énoncé dit : "Une limite de temps peut aisément être implémentée en comptant le nombre de déplacements ou le nombre de commandes entrées."
Il faut donc incrémenter un compteur au bon moment et lorsque le nombre prévu est atteint, il suffit d' "afficher un message à l'écran du genre "vous avez perdu" et bloquer le gui à la manière de quit".
Je me pose une question concernant le décompte des actions.
Es ce qu'on compter toutes les actions effectuées par les joueurs (prendre / regarde / etc) ou seulement les déplacements / changement de salle.
Merci de votre réponse
Pierre ALLA
Le plus important est de comptabiliser/limiter les actions ou seulement les déplacements, mais vous pouvez aussi ajouter une limite sur le nombre de help, par exemple.
Vous pouvez aussi remplacer ces limitations par ce qui est proposé à l'exercice suivant (optionnel), mais c'est beaucoup plus compliqué (et hors du champ de cette unité).
Réseaux sociaux